package com.itheima.service;

import com.github.pagehelper.Page;
import com.itheima.entity.PageResult;
import com.itheima.pojo.Blog;
import com.itheima.vo.BlogVo;

import java.util.List;

public interface BlogService {

    void add(BlogVo blogVo);

    void delete(BlogVo blogVo);

    void deleteBatch(List<BlogVo> blogVoList);

    void edit(BlogVo blogVo);

    /**
     * 获取博客列表 根据条件进行分页查询
     * @param keyword
     * @param currentPage
     * @param pageSize
     * @return
     */
    PageResult findAll(String keyword, Integer currentPage, Integer pageSize);

    List<Blog> getArticleByTagUid(String tagUid, Long currentPage, Long pageSize);

    List<Blog> getArticleByMonth(String monthDate);

    List<String> getSortList();

    //文章详情相关接口

    Blog getBlogByUid(String uid);
    Integer getBlogPraiseCountByUid(String uid);

    List<Blog> getSameBlogByBlogUid(String blogUid);

    Page<Blog> getSameBlogByTagUid(String tagUid, Long currentPage, Long pageSize);

    String praiseBlogByUid(String uid);
    //获取博客等级
    List<Blog> getBlogByLevel(Integer level , Integer currentPage , Integer useSort);
}
